From: Ray Strode Date: Wed, 28 Apr 2021 14:42:14 +0000 (-0400) Subject: gdm: Flip canRetry boolean to doneTrying on verification failure X-Git-Tag: archive/raspbian/50.5-1+rpi1~1^2~616^2^2~39 X-Git-Url: https://dgit.raspbian.org/%22http://www.example.com/cgi/%22/%22http:/www.example.com/cgi/%22?a=commitdiff_plain;h=8cfd4c969ba5e8126234585b1656d905266299dd;p=gnome-shell.git gdm: Flip canRetry boolean to doneTrying on verification failure This commit flips a boolean in the verification failed handler to make things easier to read. It also moves the retry logic to the bottom where it makes more logical sense. Part-of: --- diff --git a/js/gdm/util.js b/js/gdm/util.js index 1ee84acde..cb70c285f 100644 --- a/js/gdm/util.js +++ b/js/gdm/util.js @@ -685,29 +685,18 @@ var ShellUserVerifier = class { (this._reauthOnly || this._failCounter < this.allowedFailures); } - _verificationFailed(serviceName, retry) { + _verificationFailed(serviceName, shouldRetry) { // For Not Listed / enterprise logins, immediately reset // the dialog // Otherwise, when in login mode we allow ALLOWED_FAILURES attempts. // After that, we go back to the welcome screen. - - const canRetry = retry && this._canRetry(); - this._disconnectSignals(); + this._filterServiceMessages(serviceName, MessageType.ERROR); - if (canRetry) { - if (!this.hasPendingMessages) { - this._retry(serviceName); - } else { - const cancellable = this._cancellable; - let signalId = this.connect('no-more-messages', () => { - this.disconnect(signalId); - if (!cancellable.is_cancelled()) - this._retry(serviceName); - }); - } - } else { + const doneTrying = !shouldRetry || !this._canRetry(); + + if (doneTrying) { // eslint-disable-next-line no-lonely-if if (!this.hasPendingMessages) { this._cancelAndReset(); @@ -721,7 +710,18 @@ var ShellUserVerifier = class { } } - this.emit('verification-failed', serviceName, canRetry); + this.emit('verification-failed', serviceName, !doneTrying); + + if (!this.hasPendingMessages) { + this._retry(serviceName); + } else { + const cancellable = this._cancellable; + let signalId = this.connect('no-more-messages', () => { + this.disconnect(signalId); + if (!cancellable.is_cancelled()) + this._retry(serviceName); + }); + } } _onServiceUnavailable(_client, serviceName, errorMessage) {